﻿using System;
using System.Collections.Generic;

namespace PerceptiveMCAPI.Types
{
    public class getAccountDetailsResults
    {
        public string username { get; set; }
        public string user_id { get; set; }
        public DateTime member_since { get; set; }
        public bool is_trial { get; set; }
        public bool is_approved { get; set; }
        public string timezone { get; set; }
        public string plan_type { get; set; }
        public int plan_low { get; set; }
        public int plan_high { get; set; }
        public DateTime plan_start_date { get; set; }
        public int emails_left { get; set; }
        public bool pending_monthly { get; set; }
        public DateTime first_payment { get; set; }
        public DateTime last_payment { get; set; }
        public int times_logged_in { get; set; }
        public DateTime last_login { get; set; }
        public string affiliate_link { get; set; }
        public getAccountDetails_contact contact { get; set; }
        public List<getAccountDetails_module> modules { get; set; }
        public List<getAccountDetails_order> orders { get; set; }
        public getAccountDetails_rewards rewards { get; set; }

        public getAccountDetailsResults ()
        {
            plan_start_date = DateTime.MinValue;
            first_payment = DateTime.MinValue;
            last_payment = DateTime.MinValue;
            last_login = DateTime.MinValue;
            //
            contact = new getAccountDetails_contact();
            modules = new List<getAccountDetails_module>();
            orders = new List<getAccountDetails_order>();
            rewards = new getAccountDetails_rewards();
        }

        public override string ToString ()
        {
            return string.Format( "user_id:{0}, username: {1}", user_id, username );
        }
    }
}
